Syntax Descriptors

The evaluation semantics have been extended to allow the evaluation of forms whose car's are syntax descriptors. Such a form is interpreted just as if it were a form whose car was a symbol whose syntax table entry was the syntax descriptor. For example,

formula vobeyspaces :
!:} (define-local-syntax (foo x) `(,(syntax-table-entry standard-syntax-table 'lambda) () ,x))

((foo 5)) $\Longrightarrow$ 5

This feature allows control over binding time for reserved words. For example, a syntax descriptor such as foo, above, can be sure that its expansion will be treated as an expression that evaluates to a closure, regardless of what the syntax table entry for the symbol lambda is when the expansion is evaluated or otherwise analyzed.